using System;
using System.Runtime.Serialization;
namespace AppToolKit.Business
{
	[Serializable]
	public class CustomApplicationExceptionBase : ApplicationException, ISerializable
	{
		public ModuleDescript ModuleDescript
		{
			get;
			set;
		}
		public string Code
		{
			get;
			set;
		}
		public CustomApplicationExceptionBase(SerializationInfo info, StreamingContext context) : base(info, context)
		{
			this.Code = info.GetString("CODE");
			this.ModuleDescript = (ModuleDescript)info.GetValue("MODUL_DESCRIPT", typeof(ModuleDescript));
		}
		public override void GetObjectData(SerializationInfo info, StreamingContext context)
		{
			base.GetObjectData(info, context);
			info.AddValue("MODUL_DESCRIPT", this.ModuleDescript);
			info.AddValue("CODE", this.Code);
		}
		public CustomApplicationExceptionBase(string message) : base(message)
		{
		}
	}
}
